Vice64x Commodore 64 Emulator port for Xbox v11

I went ahead and did a version bump.  Three changes in this release are enough to signify one and it's about time anyways!

Thanks to Rooftop we now have support and fixes for the following!  Say "Thank You Rooftop"!

* Easyflash cart support now added.  There is currently no write support (only works for bank switching).  But this will allow you now to play those Easy Flash games that are out there.

* Gmod2 cart support now added.  So now you can play those Gmod2 games that are out there on the good 'ol xbox!

* Fixed some mixup in the original core source code that caused problems with the action replay cart and atomic replay cart.  It should be working correctly now.

* Added "Cart Reset" to the mappable controls.  Useful for cartridge game compilations.  The only downside is that it's at the bottom of the emulator definition list.

* Due to too much weirdness with xbox "emulated" refresh rates I've removed the "Always Use Xbox Video Refresh Rate" option and am disabling setting of the "emulated" refresh rate in all emulators.
  Don't worry scrolling should be fine when running C64 PAL games on an NTSC video mode.  :P

---------------------------------------------------

Vice64x Commodore 64 Emulator port for Xbox v10b10

* Updated interface to version CFv1b33.  See "Interface Changelog.txt"

* Changed text "Joysticks Swapped" to "Joystick Port (1 or 2)" to remove some ambiguity.

This is a communfuncs feature but it resulted from a "Vice64x" specific request.

* Added a new option in the "Other Video Configurations" menu called "Always Use Xbox Video Refresh Rate: Yes/No".  If set to Yes the emulator will always leave the xbox video refresh rate at the default for that video mode when running a game.  Even if that game is a different "region".  This, for example, can improve things like tearing and scrolling in emulators like the Vice64x emulator.  Keep in mind, however, that other "issues" can occur as a result of this.  For example on the C64 emu the sound may skip occasionally.  So do not come complaining to me about issues created by using this feature.  Just pick your poison and deal with it.

* Screen is now properly cleared and refreshed when changing software filters while in game.

---------------------------------------------------

Vice64X Commodore 64 Emulator port for XBox v10b9

* Fixed one small typo that prevented in-game menu load and save state from actually working.  :P

---------------------------------------------------

Vice64X Commodore 64 Emulator port for XBox v10b8

* Updated interface to version CFv1b33.  See "Interface Changelog.txt"

* Fixed Vice64 not properly displaying screenshots from the screenshot directory.

* Changes to the screenshot code to account for new directory layout when using "Extras menu" screenshot options.

* Fixed up the screenshot code so it will properly create the screenshot directory if it does not exist.

* Enabled GensX scanline filters for Vice64x!

---------------------------------------------------

Vice64X Commodore 64 Emulator port for XBox v10b7

* Updated interface to version CFv1b25.  See "Interface Changelog.txt"

* Special Note:  If you have a vice64x.ini in your emulator folder be sure to delete it (only once).  With the new ability to move the "saves" directory having one in there can cause issues.  If for some reason you forget to delete it and wonder what happened to all of your settings.. exit the emulator, remove it and then reload and everything should be ok.

* Be sure to read "Interface Changelog.txt" there is a lot of changes in there.

* Support for PAL mode 480x576 added. (see Interface Changelog.txt) for more info.

* Some fixes related to users running in PAL60 and video modes not being set correctly (see Interface Changelog.txt)

* New options regarding managing game settings (pressing BLACK) and Utilities menu.  (see Interface Changelog.txt)

* New alternate "directory" layout for artwork files to make browsing faster.  (see Interface Changelog.txt)

* Keyboard buffer is now flushed on game exit.  To hopefully help prevent oddness when switching from one game to another.

* Keyboard presses are supressed until any autostart/autoload function is complete.  To help prevent stray keyboard presses from those with controllers where the analog stick drifts.  If you controller does that just periodically move the analog sticks in a circular motion.

-----------------------------------------------

Vice64X Commodore 64 Emulator port for XBox v10b6

* Updated interface to version CFv1b21.  See "Interface Changelog.txt"

* Fixed crash issue when using gamebase v13, sorting on publisher and selecting the letter 'S'.  This time for good (unless memory runs out, then forget it! :P )

* Fixed an issue where Gamebase games with more than one screenshot were only displaying the first screenshot.

-----------------------------------------------

Vice64X Commodore 64 Emulator port for XBox v10b5

* Updated interface to version CFv1b18.  See "Interface Changelog.txt"

* New pixel perfect settings for 720x576 mode.. however they were not being accessed do to a coding oversite on my part.  Fixed.  If anyone has any settings for 720x480 that I can use, please let me know.

* I noticed that the interface was not compiling with optimizations on.  So I went through and activated a bunch of optimizations.  This seems to speed up the game browsing a little bit.

* Gamebase screenshots are now looked for in the same directory pointed to as the gamebase database itself.  ( gamebasepath\\screenshots\\C64\\ ).

* Gamebase screenshots now display properly.  However when using the gamebase menu the only screenshots you will see are ones from the gamebase and not any you take yourself or from the media directory.

-----------------------------------------------

Vice64X Commodore 64 Emulator port for XBox v10b4

* Updated interface to version CFv1b16.  See "Interface Changelog.txt"


-----------------------------------------------

Vice64X Commodore 64 Emulator port for XBox v10b3

* Updated interface to version CFv1b14.  See "Interface Changelog.txt"


-----------------------------------------------

Vice64X Commodore 64 Emulator port for XBox v10b2

* Updated interface to version CFv1b08.  See "Interface Changelog.txt"


-----------------------------------------------

Vice64X Commodore 64 Emulator port for XBox v10

Updated to the latest madmab edition interface.

Be sure to copy the "C64" and "Drives" directory from the zip over to your xbox.  These files are now loaded by the emu as opposed to being built in.

Special thanks to Asphodel for working on the xtras and alot of patience when trying out my many beta builds to squash out some issues with Vice64.


*****************************
* Interface Related Changes *
*****************************

* Removed game specific video mode option from emulators that used it and replaced with a global "Game video mode" option.  It can be set for any video mode you wish, or set to be the same as the current menu video mode.  I will add this feature in emus as I release them.

* I modified the screenshot display code so that it no longer displays shots from the "e:\emuname\screenshots\".  This was causing slowdown in some cases when browsing through games.  As an alternative you can go into the "Screenshot/Movie Preview Settings" and set "Show Saved Screenshots Dir?" to display them if you wish.  I put this in for people who still prefer to use the old "screenshot\gamename" format.  The options are "No" for the new format.  "Screenshots Dir Only" for the old format, and "Screenshots + Artwork" to display both with risk of interface slowdown.  Choose your poison... :p.  It defaults to "No".

* Fixed issue where Using "perfect pixel screen-sizing" in 720x480 mode and then pressing a or b crashes the emu. It says ("No accurate pixel mode settings defined for video in 720x480 mode" and locks-up).

* Fixed a bunch of issues regarding the PAL 720x576 and emu's that might set the refresh rate to 50hz (not possible for that mode).  The affected emulators will display a warning if this conflict exists.

* Removed Force Pal 50, Flicker Level, Soften Display, 10x11 pixel aspect ratio from individual game saves (creates problems and what is the point of this anyways?)


************
* JiffyDos *
************

http://www.cmdweb.de/jiffy.htm

JiffyDos support is currently included with this version of Vice.  However JiffyDos is still actively supported.  So if you want to use it you will use your own JiffyDos ROM set.  See above link for where you can purchase JiffyDos.  Be sure to support this guy.

The JiffyDos kernal file must be named "JiffyDOS_Kernal.bin" and placed in the emulators "C64" directory.  The JiffyDos drive kernals must be named "JiffyDOS_C1541.bin" and "JiffyDOS_1571D.bin" and placed in the "Drives" directory.  Keep in mind tape images will not work when Jiffydos is activated.


***************************
* Changes To Vice64x Core *
***************************

* Added a new option to the Configuration menu.  "Global Emu Specific Options".  It allows global overrides for various game settings and is emu specific.  Vice64 will be the first to use it with a global override for the custom palette.

* The issue with sound stutter when the xbox refresh is set to 50hz and running a PAL game should be fixed now.  What this means is if you set the game for PAL it will set the xbox refresh to 50hz and if the game is set to NTSC the xbox refresh will be 60hz.

* Added option to "In Game Menu" to swap the joysticks.

* If the "saves" directory is full (4096 files/dirs) then the emu should now store a games save in "VICE64X01".  It should also be able to find a save if it is in there.

* Fixed minor "glitch" in the "Cartridge Freeze" mapping code.

* Now remembers which disk was in the drive when a savestate is created.

* Emulator savestates created after a certain amount of gameplay should work now.  :P

* Activated ability to change drive type between 1541 and 1571.  This will allow you to use 1571 images (1541 is the C64 standard).  1581 drives dont work right with this particular core, sorry.  :(

* If you select a .d71 image drive type will be set to 1571.  Otherwise it will default to 1541.

* If you have JiffyDos ROMs you can now use JiffyDos for faster load speeds.  The JiffyDos kernal file must be named "JiffyDOS_Kernal.bin" and placed in the emulators "C64" directory.  The JiffyDos drive kernals must be named "JiffyDOS_C1541.bin" and "JiffyDOS_1571D.bin" and placed in the "Drives" directory.  Keep in mind tape images will not work when Jiffydos is activated.

* Activated REU option so you can use REU images, etc.  You can set memory to 128, 256, 512, 1024, 2048, 4096, and 8192.  If you want 16384 you will have to set your video mode to 640i/p.

* Emulator always remembers which Disks, and Tape is loaded on initial set-up.  That way if you do change any during gameplay it will not foobar startup when you go to play the game again.  If you want to change the "initial set-up" just delete the games config by pressing black on the game selection screen.

* Boot Cart, Disk, and Tape are no longer asked for in already configured games with a multifile zip.  If for some reason you want to change this just delete the games config by pressing black.

* Fixed crash issue when using gamebase 7, sorting on publisher and selecting the letter 'S'.

* User now has option to "remove" a disk from the floppy drive.

* Savestates were not saving properly in some cases.  Fixed.

* "Change Disk in Drive 8 - From Gamebase" only displays if you have the gamebase mode turned on.

* Added a "per game" autoload save state option.  Options are "No, 1-10, Most Recent"

* Name of Loaded disk image is displayed in the in game menu.

* Emulator now supports Action Lists, Preset Controller Configs, and a Config Database.


********
* Bugs *
********

* When a game is put in NTSC. Sometimes the next game(s) played will crash the emu after a while.


*********************
* To Do For Vice64x *
*********************

* Gamebase -> implement sorting on gameyear or commercial releases

* Flipper list.

* Modify REU option so it does not force user to use 640i/p if running on an Xbox with extra memory.

- Eh?  Core update maybe?  However Vice is some pretty complicated code (translation: headache to maintain).
